Software applications allow end users to interact with the functionality of the application through user interface elements, such as toolbars. With the release of MICROSOFT® Office 2007, a new type of user interface model was introduced, which provided toolbars in the form of “ribbons”. Ribbons group together related operations based upon a task that the user is trying to perform, and typically provide graphical representations of those operations. One way that a ribbon can be loaded is through an add-in, which is a component that is dynamically discovered and loaded by its host. To load a ribbon as an add-in, the add-in is queried by the host application (such as a MICROSOFT® Office 2007 program) to see if the add-in implements the ribbon customizations. If so, then the host application asks the add-in to supply the ribbon customizations. This is the only time that the host application asks for ribbon customizations. With this approach, the ribbon cannot be dynamically modified at a later time.